package collection;

import java.util.ArrayList;
import java.util.List;

/**
 * List接口：
 * 1.List接口继承自Collection接口，为有序（存取一致），可重复，有下标
 * 2.有两个常见的实现类：
 *  1）ArrayList：内部使用动态数组实现，查询性能更好（直接下标找到物理地址）、增删性能不好
 *  2）LinkedList：内部使用链表实现，只记收尾，所以收尾元素的增删性能好，中间元素查询和增删性能不好
 * 3.get()获取元素的值，set()赋值
 */
public class ListDemo1 {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("one");
        list.add("two");
        list.add("three");
        list.add("one");
        System.out.println(list);
        System.out.println(list.get(0));
        list.set(1,"two1");
        System.out.println(list.set(1,"two1"));//将下表1元素换位two，返回值为改之前的元素
        System.out.println(list);
    }
}
